Interazione tra moduli e PHP

L'interazione tra un modulo, scritto in HTML, ed il PHP consiste nel recupero e la manipolazione dei valori immessi nello stesso modulo.
Per avvenire ciò il modulo deve contenere obbligatoriamente la clausola METHOD, contenente il metodo con cui vengono inviati i dati (GET o POST), la clausola ACTION che contiene il nome dello script a cui inviare i dati una volta immessi nel modulo ed infine il pulsante di invio che avvia l'operazione di "submit", cioè di esecuzione dello script, e quindi il recupero e la manipolazione sopra accennata.
Ovviamente un esempio pratico può chiarire meglio di tante parole scritte la semplicità di funzionamento di questa interazione.
Per prima cosa creiamo l'interfaccia utente in HTML con il modulo che conterrà i dati da recuperare:

<html><head><title>Modulo di calcolo</title></head>
<body>
<form method="post" action="calcolo.php"><p>
Inserisci il primo valore: <input type="text" name="x1" size="10"><p>
Inserisci il secondo valore: <input type="text" name="x2" size="10"><p>
Scegli l'operazione da effettuare:<br>
<input type="radio" name="opz" value="add"> Addizione<br>
<input type="radio" name="opz" value="sott"> Sottrazione<br>
<input type="radio" name="opz" value="mol"> Moltiplicazione<br>
<input type="radio" name="opz" value="div"> Divisione<p>
<input type="submit" name="invio" value="Esegui">
</form>
</body>
</html>  

Salvate il file con il nome di modulo.html nella directory del PHP, cioè in htdocs, quindi avviate il browser e digitate nella barra degli indirizzi http://localhost/modulo.html.
A questo punto se il programma è stato scritto nella maniera corretta dovrebbe apparire il modulo come da figura sotto.

Adesso la vostra attenzione si deve spostare sugli attributi name= di tutti i moduli, tranne il pulsante di invio. Essi hanno valore x1 per il modulo del primo valore, x2 per il  modulo del secondo valore e opz per quanto riguarda l'unica scelta del modulo delle operazioni (si ricorda che il modulo di tipo radio permette una sola scelta tra quelle indicate) e rappresentano i nomi delle variabili che vengono recuperati dallo script calcolo.php indicato nell'attributo ACTION del modulo.
Adesso creiamo il nostro file PHP per la manipolazione dei dati inseriti nei moduli:

<?
   if (($x1 == "") || ($x2 == "") || ($opz == "")
        {
          header("Location: http://localhost/modulo.html");
          exit;
        }
     if ($opz == "add")
       { $ris = $x1 + $x2; }
     if ($opz == "sott")
      { $ris = $x1 - $x2; }
     if ($opz == "mol")
      { $ris = $x1 * $x2; }
     if ($opz == "div")
      { $ris = $x1 / $x2; }
?>
<html><head><title>Risultato del calcolo</title></head>
<body>
<p>Il risultato del calcolo è <? echo "$ris"; ?>
</body>
</html>

Salvate il file, naturalmente con il nome di calcolo.php, nella directory htdocs e mandate di nuovo in esecuzione il modulo come fatto in precedenza, quindi inserite dei valori interi (o decimali, a scelta vostra), scegliete l'operazione da effettuare e premete il tasto "Esegui".
Se tutto, naturalmente, è stato scritto in maniera corretta vedrete apparire una nuova pagina con il risultato dell'operazione prescelta.
Adesso è doverosa una spiegazione di quello che abbiamo scritto nello script calcolo.php:
Innanzitutto la parte iniziale dello script non è altro che un semplice controllo che tutti i dati vengano immessi, in caso contrario, cioè se non si immetti uno dei valori o non si sceglie l'operazione, lo script non fa altro che ricaricare il modulo azzerando i valori fino a quel momento immessi.
Le altre operazioni non sono altro che una serie di cicli di controllo che eseguono l'operazione scelta dall'utente.
Alla fine di questi controlli, e una volta chiusa l'intera istruzione in PHP, non facciamo altro che aggiungere il codice HTML che ci permette di visualizzare il risultato in output. Naturalmente questa ultima fase è pienamente personalizzabile con tag per la formattazione che già conosciamo.